package com.haierp.mapper;

import java.util.List;

import org.apache.ibatis.annotations.Param;

import com.baomidou.mybatisplus.mapper.AutoMapper;
import com.haierp.model.ErpOrder;
import com.haierp.model.sale.OuterOrderDetail;
import com.haierp.vo.ErpOrderQueryVO;
import com.haierp.vo.ShippingOrderQueryVO;

/**
 * 
 * @author liuhui
 *
 */
public interface ErpOrderMapper extends AutoMapper<ErpOrder>{
	
	Integer queryErpOrdersCount(ErpOrderQueryVO erpOrderQueryVO);
	
	List<ErpOrder> queryErpOrders(ErpOrderQueryVO erpOrderQueryVO);
	
	List<ErpOrder> queryByErpOrderId(@Param("erpOrderIdList")List<Long> erpOrderIdList);
	
	List<ErpOrder> queryByShippingOrderTime(ShippingOrderQueryVO shippingOrderQueryVO);
	
	List<ErpOrder> queryUnStockUpErpOrders(@Param("skuId")Long skuId);

	List<ErpOrder> queryTransStockUpErpOrders(@Param("skuId")Long skuId);
	
	List<ErpOrder> queryErpOrderForExcel(ErpOrderQueryVO erpOrderQueryVO);
	
	void updateUpcForErpOrder(ErpOrder erpOrder);
	
	void updateWeightForErpOrder(ErpOrder erpOrder);
	
	String selectPositionNoByErpOrderId(@Param("erpOrderId")Long erpOrderId);
	
	ErpOrder queryHaihuErpOrders(OuterOrderDetail outerOrderDetail);
	
	List<ErpOrder> queryHaihuShippingNO(@Param("targetNo")String targetNo,@Param("skuCode")String skuCode);
	
	Integer queryOrderNoStockSkuCount(ErpOrderQueryVO erpOrderQueryVO);
	
	List<ErpOrder> queryOrderNoStockSku(ErpOrderQueryVO erpOrderQueryVO);
	
	List<ErpOrder> queryErpOrderDetailByIds(@Param("erpOrderIdList")List<Long> erpOrderIdList);
	
	public void updateErpIdCard(String targNo,String idCard);
	
	//List<ErpOrder> queryShippingRightNow();
	
	void rollBackForErpOrder(@Param("shippingOrderId")Long shippingOrderId);
	
	 
	 List<ErpOrder> inventoryYzCount(ErpOrderQueryVO erpOrderQueryVO);
	 
	 List<ErpOrder> queryByerpOrderIdForDetail(@Param("erpOrderIdList")List<Long> erpOrderIdList);
	 
	 void balanceOrder(@Param("erpOrderIdList")List<ErpOrder> erpOrderIdList);
	 
	 List<String> queryErpOrdersIdCard();
	
}
